package com.cnap.multiclouldmgmt.model.network;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.util.Date;

/**
 * 内存使用的情况
 *
 * @author xc
 **/
@ApiModel(value = "com.cnap.multiclouldmgmt.model.network.LinkResInfoModel",description = "网络链路资源情况")
public class LinkResInfoModel {

    //链路名称
    @ApiModelProperty(value = "链路名称")
    private String linkName;

    //虚网名称
    @ApiModelProperty(value = "虚网名称")
    private String vNetName;

    //带宽Mbps
    @ApiModelProperty(value = "带宽Mbps")
    private int bandwidthMbps;


    //时延单位毫秒
    @ApiModelProperty(value = "时延单位毫秒")
    private double delayMs;

    //抖动
    @ApiModelProperty(value = "抖动单位毫秒")
    private double netJitterMs;

    //丢包率
    @ApiModelProperty(value = "丢包率，0-100的数")
    private double lossRate;

    //5分钟平均流量单位kbps
    @ApiModelProperty(value = "5分钟平均流量单位kbps")
    private int avgFlow5MinKbps;

    //状态，正常，断开
    @ApiModelProperty(value = "状态，正常，断开")
    private String status;

    //状态，正常，断开
    @ApiModelProperty(value = "时间")
    private Date recordDate;

    //状态，正常，断开
    @ApiModelProperty(value = "时间")
    private String accountName;

    @ApiModelProperty(value = "云商")
    private String cloudType;

    public LinkResInfoModel() {
    }


    public LinkResInfoModel(String linkName, String vNetName, int bandwidthMbps, int delayMs, int netJitterMs, int lossRate, int avgFlow5MinKbps, String status) {
        this.linkName = linkName;
        this.vNetName = vNetName;
        this.bandwidthMbps = bandwidthMbps;
        this.delayMs = delayMs;
        this.netJitterMs = netJitterMs;
        this.lossRate = lossRate;
        this.avgFlow5MinKbps = avgFlow5MinKbps;
        this.status = status;
    }

    /**
     * get
     *
     * @return CloudType
     */
    public String getCloudType() {
        return cloudType;
    }

    /**
     * set
     *
     * @param cloudType cloudType
     */
    public void setCloudType(String cloudType) {
        this.cloudType = cloudType;
    }

    /**
     * get
     *
     * @return AccountName
     */
    public String getAccountName() {
        return accountName;
    }

    /**
     * set
     *
     * @param accountName accountName
     */
    public void setAccountName(String accountName) {
        this.accountName = accountName;
    }

    /**
     * get
     *
     * @return RecordDate
     */
    public Date getRecordDate() {
        return recordDate;
    }

    /**
     * set
     *
     * @param recordDate recordDate
     */
    public void setRecordDate(Date recordDate) {
        this.recordDate = recordDate;
    }

    /**
     * get
     *
     * @return LinkName
     */
    public String getLinkName() {
        return linkName;
    }

    /**
     * set
     *
     * @param linkName linkName
     */
    public void setLinkName(String linkName) {
        this.linkName = linkName;
    }

    /**
     * get
     *
     * @return vNetName
     */
    public String getvNetName() {
        return vNetName;
    }

    /**
     * set
     *
     * @param vNetName vNetName
     */
    public void setvNetName(String vNetName) {
        this.vNetName = vNetName;
    }

    /**
     * get
     *
     * @return BandwidthMbps
     */
    public int getBandwidthMbps() {
        return bandwidthMbps;
    }

    /**
     * set
     *
     * @param bandwidthMbps bandwidthMbps
     */
    public void setBandwidthMbps(int bandwidthMbps) {
        this.bandwidthMbps = bandwidthMbps;
    }

    /**
     * get
     *
     * @return DelayMs
     */
    public double getDelayMs() {
        return delayMs;
    }

    /**
     * set
     *
     * @param delayMs delayMs
     */
    public void setDelayMs(double delayMs) {
        this.delayMs = delayMs;
    }

    /**
     * get
     *
     * @return NetJitterMs
     */
    public double getNetJitterMs() {
        return netJitterMs;
    }

    /**
     * set
     *
     * @param netJitterMs netJitterMs
     */
    public void setNetJitterMs(double netJitterMs) {
        this.netJitterMs = netJitterMs;
    }

    /**
     * get
     *
     * @return LossRate
     */
    public double getLossRate() {
        return lossRate;
    }

    /**
     * set
     *
     * @param lossRate lossRate
     */
    public void setLossRate(double lossRate) {
        this.lossRate = lossRate;
    }

    /**
     * set
     *
     * @param lossRate lossRate
     */
    public void setLossRate(int lossRate) {
        this.lossRate = lossRate;
    }

    /**
     * get
     *
     * @return AvgFlow5MinKbps
     */
    public int getAvgFlow5MinKbps() {
        return avgFlow5MinKbps;
    }

    /**
     * set
     *
     * @param avgFlow5MinKbps avgFlow5MinKbps
     */
    public void setAvgFlow5MinKbps(int avgFlow5MinKbps) {
        this.avgFlow5MinKbps = avgFlow5MinKbps;
    }

    /**
     * get
     *
     * @return Status
     */
    public String getStatus() {
        return status;
    }

    /**
     * set
     *
     * @param status status
     */
    public void setStatus(String status) {
        this.status = status;
    }
}
